package com.itheima.edu.homeweek;

import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Comparator;
import java.util.List;
import java.util.TreeSet;

public class HomeWeek06 {
    /*定义学生类，有姓名，年龄，分数三个属性。
    1. 创建三个学生对象，添加到集合中，要求分别按照分数，年龄，姓名作为条件进行排序。
    2. 将集合中的三个学生对象信息存储到当前项目下的stu.txt文件中
        举例：
            张三,18,88
            李四,21,98
            老王,24,91*/
    public static void main(String[] args) throws IOException {
        //创建学生数组 比较器实现排序 按照分数，年龄，姓名作为条件进行排序
        TreeSet<Student> list = new TreeSet<>(new Comparator<Student>() {
            @Override
            public int compare(Student o1, Student o2) {
                int result = o1.getScore() - o2.getScore();
                result = result == 0 ? o1.getAge() - o2.getAge():result;
                result = result == 0 ? o1.getName().compareTo(o2.getName()):result;
                return  result;
            }
        });

        //添加对象
        list.add(new Student("张三",20,90));
        list.add(new Student("李四",25,100));
        list.add(new Student("王五",18,55));

        //创建当前项目路径
        FileOutputStream fos =new FileOutputStream("day015\\stu.txt");
        //存储学生信息
        for (Student student : list) {
            fos.write(("名字："+student.getName()+"，年龄"+student.getAge()+"，成绩："+student.getScore()).getBytes());
            fos.write("\r\n".getBytes());
        }
        //结束调用
        fos.close();
    }
}
